import java.util.Scanner;
import java.util.*;
/*给定两个字符串 s 和 t ，判断它们是否是同构的。
如果 s 中的字符可以按某种映射关系替换得到 t ，那么这两个字符串是同构的。
每个出现的字符都应当映射到另一个字符，同时不改变字符的顺序。
不同字符不能映射到同一个字符上，相同字符只能映射到同一个字符上，字符可以映射到自己本身。
 */
public class Main {
    public static boolean check(String s, String t) {
        Map<Character, Character> mt = new HashMap<>();
        Map<Character, Character> tm = new HashMap<>();
        for (int i = 0; i < s.length(); i++) {
            char c = s.charAt(i), d = t.charAt(i); // 互键映射
            if (mt.containsKey(c) && mt.get(c) != d || tm.containsKey(d) && tm.get(d) != c) {
                return false;
            }
            mt.put(c, d);
            tm.put(d, c);
        }
        return true;
    }

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String s = sc.nextLine();
        String t = sc.nextLine();
        boolean res = check(s, t);
        System.out.println(res);
    }
}